package ifierce.traffic.simulator.view.components;

import java.awt.Insets;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.Icon;
import javax.swing.JButton;

/**
 * Клас представляє базову реалізацію кнопки панелі інструментів
 * @author Igor Fierce
 *
 */
@SuppressWarnings("serial")
public class ToolBarButton extends JButton {
	
	/**
	 * Конструктор використовується для створення кнопки із заданою іконкою та поведінкою.
	 * @param icon Іконка кнопки типу {@link Icon}
	 */
	public ToolBarButton(Icon icon) {
	    super(icon);
	    setFocusPainted(false);
	    setRolloverEnabled(false);	    
	    setBorderPainted(false);
	    setContentAreaFilled(false);
	    setMargin(new Insets(1,1,1,1));
	    this.addMouseListener(new MouseListener() {
	    	
	    	public void mouseEntered(MouseEvent e) {
				JButton button = (JButton) e.getSource();
				button.setRolloverEnabled(true);
				button.setContentAreaFilled(true);
			}

			public void mouseExited(MouseEvent e) {
				JButton button = (JButton) e.getSource();
				button.setRolloverEnabled(false);
				button.setContentAreaFilled(false);
			}
			
			public void mouseClicked(MouseEvent e) {}
			
			public void mousePressed(MouseEvent e) {}
			
			public void mouseReleased(MouseEvent e) {}
			
	    });
	}
}
